import request from '@/utils/http'

/**
 * @desc 分页查询角色列表
 * @param { Object } data 参数集合
 * @param { String } data.type 角色类型
 * @param { String } data.rname 角色名称
 * @param { Number } data.current 当前第几页
 * @param { Number } data.pageSize 每页多少条数据
 * @returns 
 */
export const RoleQueryListPage = data => {
  return request({
    method: 'post',
    url: '/role/query',
    data
  })
}

/**
 * @desc 不分页查询角色列表
 * @param { Object } data 参数集合
 * @param { String } data.type 角色类型
 * @param { String } data.rname 角色名称
 * @returns 
 */
export const RoleQueryList = data => {
  return request({
    method: 'post',
    url: '/role/list',
    data
  })
}

/**
 * @desc 角色编辑新增
 * @param { Object } data 参数集合
 * @param { String } data.id 角色ID
 * @param { String } data.rname 角色名称
 * @param { String } data.state 角色状态
 * @param { String } data.description 角色描述
 * @param { String } data.type 角色类型
 * @param { String } data.checkMids 选中的模块id list
 * @returns 
 */
export const RoleSave = data => {
  return request({
    method: 'post',
    url: '/role/save',
    data
  })
}

/**
 * @desc 角色删除
 * @param { String | Number } id 角色ID
 * @returns 
 */
export const RoleDelete = id => {
  return request({
    method: 'post',
    url: `/role/delete/${id}`
  })
}

/**
 * @desc 获取角色模块列表
 * @param { String | Number } id 角色ID
 * @returns 
 */
export const GetRoleModuleById = id => {
  return request({
    method: 'post',
    url: `/role/getModuleTreeByRid/${id}`
  })
}

/**
 * @desc 获取主体角色
 * @returns 
 */
export const GetRoleSubjectList = () => {
  return request({
    method: 'get',
    url: `/role/getSubjectList`
  })
}
